<?php

/***********************************************/
/*CONTENIDO*/
/***********************************************/
echo" <div class=\"pag_content\">
 	<div class=\"pag_content_title\">
		<div class=\"pag_title_cap\">Cap&iacute;tulo 2: </div>
		<div class=\"pag_title_cont\">	Instalaci&oacute;n y Administraci&oacute;n</div>
    </div>
    <div class=\"pag_content_body\">         
	<div class=\"contenido_principal\">	
		<br />";
		
/***********************************************/
/*TITULO PARTE*/
/***********************************************/

echo"	<div class=\"parrafo_titulo\">
		 Levantar y bajar los servicios de la base de datos
	</div>";	

	
/***********************************************/
/*CONTENIDO*/
/***********************************************/

echo"
	<div class=\"parrafo\" align=\"justify\">
		&nbsp;&nbsp; Entendemos por levantar  la instancia de la base de datos como el procedimiento que inicia el servicio de la base de datos.
		 Para poder acceder de forma remota a una base de datos no solo es necesario que est&eacute; levantada sino tambien que el listener se encuentre
		  escuchando las peticiones de conexion.
		  <br />
&nbsp;&nbsp;Como comprendereis no todos los usuarios de una base de datos pueden levantar y bajar la instancia.
 Unicamente los usuarios con los privilegios de SYSDBA y SYSOPER pueden levantar y bajar la instancia de la base de datos.
	</div>
	
	<h3>2.1 STARTUP</h3>
<div class=\"parrafo\" align=\"justify\">
&nbsp;&nbsp;Como seguremente muchos de vosotros sepais, una base de datos pasa por estos tres modos antes de estar accesible al resto de usuarios: NOMOUNT, MOUNT y OPEN. Por lo tanto, existen varias formas de levantar la instancia de la base de datos:
</div>
<b>SQL>STARTUP NOMOUNT</b>
<div class=\"parrafo\" align=\"justify\">
&nbsp;&nbsp;Inicia la instancia de la base de datos pero sin montarla, es decir, en el modo NOMOUNT unicamente se ha leido el SPFILE, se han iniciado los procesos en background y se ha iniciado las estructura de memoria de la instancia. 
<br />
&nbsp;&nbsp;Necesitaremos iniciar la base de datos en este modo cuando queremos realizar algun tipo de tarea sobre los control files.
</div>

<b>SQL>STARTUP MOUNT</b>
<div class=\"parrafo\" align=\"justify\">
&nbsp;&nbsp;Inicia la instancia de la base de datos dejandola montada.  Este comando realiza implicitamente un comando STARTUP NOMOUNT y ademas lee el contenido de los contro files para identificar las diferentes estrucuturas fisicas de la base de datos.

&nbsp;&nbsp;Necesitaremos iniciar la base de datos en este modo cuando necesitemos hacer un recovery de la base de datos. En este modo tambi&eacute;n se pueden modificar las rutas de los data files, redo log files y los archive logs.
</div>
<b>SQL>STARTUP OPEN</b>
<div class=\"parrafo\" align=\"justify\">
&nbsp;&nbsp;Al ejecutar unicamente el comando STARTUP se realiza implicitamente este comando. Pasando por los modos de NOMOUNT, MOUNT este &uacute;ltimo comando dejara la base de datos accesible a todos los usuarios.

&nbsp;&nbsp;Puede ocurrir que la estructura actual de nuestra base de datos sea erronea, y hayamos recuperado un PFILE de nuestro backup. Para poder iniciar nuestra base de datos con ese PFILE utilizaremos el siguiente comando.
<br /><br />
sql> STARTUP PFILE=/u01/sp01.ora
<br /><br />
&nbsp;&nbsp;Existen otros metodos de arranque especiales, que tal vez resulten utiles en determinadas situaciones:
</div>
<b>SQL>STARTUP FORCE</b>
<div class=\"parrafo\" align=\"justify\">
&nbsp;&nbsp;Se puede dar la sutuaci&oacute;n, que el servidor donde almacenamos nuestra base de datos sufra una perdida de corriente y que al intentar iniciar la base de datos esta tenga dificultades y no inicie correctamente. Ser&aacute en esta situaci&oacute;n cuando tengamos que utilizar este comando.
</div>
<b>SQL>STARTUP RESTRICT</b>
<div class=\"parrafo\" align=\"justify\">
&nbsp;&nbsp;Este comando levanta la instancia de la base de datos dejandola en modo open, pero con la particularidad de que unicamente los usuarios con el privilegio RESTRICTED SESSION podran establecer conexiones con la base de datos. 

Este comando podr&iacute;a resultar &uacute;til, cuando se tienen que hacer cambios estructurales en una tabla, en los datos que almacena y no nos interesa que otros usuarios accedan a esa tabla mientras la estoy cambiando.
</div>
<div class=\"parrafo\" align=\"justify\">
	Ejemplo STARTUP NORMAL:	
</div>
<blockquote style=\"COLOR: #2e5348; FONT-SIZE: 12px; FONT-WEIGHT: bold FONT:Arial, Helvetica, sans-serif\">
 <pre><p>SQL>startup
 
 <b>Salida:</b>
	Instancia ORACLE iniciada.
	
	Total System Global Area  532676608 bytes
	Fixed Size                  1249968 bytes
	Variable Size             150998352 bytes
	Database Buffers          373293056 bytes
	Redo Buffers                7135232 bytes
	Base de datos montada.
	Base de datos abierta.
</p></pre></blockquote>
<br />
<h3>2.2 SHUTDOWN</h3>
<div class=\"parrafo\" align=\"justify\">
&nbsp;&nbsp;Para bajar o parar la instancia de una base de datos tenemos la posibilidad de utilizar uno de estos comandos:
</div>

<b>SQL>SHUTDOWN NORMAL</b>
<div class=\"parrafo\" align=\"justify\">
&nbsp;&nbsp;O unicamente utilizando SHUTDOWN pararemos nuestra base de datos de una forma normal. Es decir:

<div class=\"parrafo_lista_sub\">
-	No se permitiran nuevas conexiones.<br />
-	El proceso de apagado esperar&aacute a que todos los usuarios conectados cierren sus conexiones.<br />
</div></div>
<div class=\"parrafo\" align=\"justify\">
&nbsp;&nbsp;Como tenemos que esperar a que todos los usuarios se desconecte, este proceso de apagado se puede alargar de forma indefinida.
</div><br />

<b>SQL>SHUTDOWN TRANSCATIONAL</b>
<div class=\"parrafo\" align=\"justify\">
	&nbsp;&nbsp;Este proceso es un poco mas agresivo que el normal:
<div class=\"parrafo_lista_sub\">
-	No se permitiran nuevas conexiones.<br />
-	No se permiten mas transacciones de los usuarios conectados.<br />
-	Cuando una transaccion termina se desconecta a ese cliente.<br />
</div></div>
<div class=\"parrafo\" align=\"justify\">
&nbsp;&nbsp;Este tipo de apagado no requiere recovery una vez la base de datos se inicie.
</div><br />
<b>SQL>SHUTDOWN IMMEDIATE</b>
<div class=\"parrafo\" align=\"justify\">
&nbsp;&nbsp;Este metodo es uno de los m&aacutes agresivos.

 <div class=\"parrafo_lista_sub\">
-	No se permiten nuevas conexiones.<br />
-	En las transacciones que estan en curso se hace un rollback.<br />
</div></div>
<div class=\"parrafo\" align=\"justify\">
&nbsp;&nbsp;Este tipo de apagado no requiere recovery una vez la base de datos se inicie.
</div><br />
<b>SQL>SHUTDOWN ABORT</b>
<div class=\"parrafo\" align=\"justify\">
&nbsp;&nbsp;Este comando es similar al efecto que tendria tirar del cable de la corriente del servidor. Es decir, cualquier transaccion que se encuentre en proceso se termina sin hacer rollback. Por este motivo se realiza un recovery al volver a levartar la base de datos.
</div>
<div class=\"parrafo\" align=\"justify\">
	Ejemplo SHUTDOWN NORMAL:	
</div>
<blockquote style=\"COLOR: #2e5348; FONT-SIZE: 12px; FONT-WEIGHT: bold FONT:Arial, Helvetica, sans-serif\">
 <pre><p>SQL> shutdown
 
Salida:	
  Base de datos cerrada.
  Base de datos desmontada.
  Instancia ORACLE cerrada.
</p></pre></blockquote>
 ";

echo"
	</div> 		 
    </div>
    <div class=\"pag_content_footer\">
    </div>
    <div class=\"pag_content_nav\">		
		<div class=\"pag_contenido_left\">
			<a  class=\"cap_next\" href=oca_main.php?cap=2&part=1>	&lt; Anterior </a>
		 </div>
		<div class=\"pag_contenido_right\" align=\"right\">	
			<a  class=\"cap_next\" href=\"oca_main.php?cap=3&part=0\">	Cap&iacute;tulo 3 &gt;</a>
		 </div>
	</div>      
</div>
";
?>
